<?php
/**
 * Esta extensión permite mostrar un mensaje emergente al pasar sobre cualquier elemento.
 * j.m.j.s.
 * @package CWidget
 * @since 21/08/2009
 * @version 1.0
 */
class BoxOver extends CWidget
{
	/**
	 * @var integer
	 * Se permiten valores del 1 al 6 donde cada valor representa un ancho distinto:
	 * 1(70px)
	 * 2(100px)
	 * 3(150px)
	 * 4(200px)
	 * 5(300px)
	 * 6(450px)
	 */
	public $size=1;
	
	public $header='';
	
	public $body='';
	
	public function run()
	{
		$this->registerClientScripts();
		// Si el tamaño no tiene un valor entre 1 y 6 entonces se asigan el 1
		if($this->size < 1 or $this->size > 6)
			$this->size = 1;
		// Este es el titulo
		if($this->header != '')
			$header = "header=[{$this->header}]";
		// El texto
		if($this->body != '')
			$body = "body=[{$this->body}]";
			
		echo "cssbody=[dvbdy{$this->size}] cssheader=[dvhdr{$this->size}] {$header} {$body}";
	}

  /**
   * Registers the clientside widget files (css & js)
   */
  private function registerClientScripts() 
  {
    // Get the resources path
    $resources = dirname(__FILE__).DIRECTORY_SEPARATOR.'resources';

    // publish the files
    $baseUrl = Yii::app()->assetManager->publish($resources);

    Yii::app()->clientScript->registerScriptFile($baseUrl.'/boxover.js');
    Yii::app()->clientScript->registerCssFile($baseUrl.'/boxover.css');
  }
}